package com.netty.tcp.ew.domain;

import java.util.ArrayList;
import java.util.Date;
import java.util.List;

import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;


/**
 * 区域信息对象 base_area
 *
 * @author Mr.wu
 * @date 2023-09-24
 */
public class BaseArea
{
    private static final long serialVersionUID = 1L;

    /** 区域ID */
    private Integer areaId;

    /** 区域名称 */

    private String areaName;

    /** 祖级列表 */
    private String ancestors;

    /** 备注 */

    private String remark;

    private Integer companyId;

    private String createBy;

    private String updateBy;

    private Date createTime;

    /** 更新时间 */
    private Date updateTime;

    /** 所属区域 */

    private Integer areaPid;

    /** 父区域名称 */
    private String parentName;

    /** 子部门 */
    private List<BaseArea> children = new ArrayList<BaseArea>();

    public void setAreaId(Integer areaId)
    {
        this.areaId = areaId;
    }

    public Integer getAreaId()
    {
        return areaId;
    }
    public void setAreaName(String areaName)
    {
        this.areaName = areaName;
    }

    public String getAreaName()
    {
        return areaName;
    }

    public String getAncestors()
    {
        return ancestors;
    }

    public void setAncestors(String ancestors)
    {
        this.ancestors = ancestors;
    }

    public void setAreaPid(Integer areaPid)
    {
        this.areaPid = areaPid;
    }

    public Integer getAreaPid()
    {
        return areaPid;
    }

    public String getParentName()
    {
        return parentName;
    }

    public void setParentName(String parentName)
    {
        this.parentName = parentName;
    }


    public List<BaseArea> getChildren()
    {
        return children;
    }

    public void setChildren(List<BaseArea> children)
    {
        this.children = children;
    }

    public void setCompanyId(Integer companyId) {
        this.companyId = companyId;
    }
    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
                .append("areaId", getAreaId())
                .append("areaName", getAreaName())
                .append("ancestors", getAncestors())
                .append("remark", getRemark())
                .append("areaPid", getAreaPid())
                .append("createBy", getCreateBy())
                .append("createTime", getCreateTime())
                .append("updateBy", getUpdateBy())
                .append("updateTime", getUpdateTime())
//            .append("companyId", getCompanyId())
                .toString();
    }

    private String getCreateBy() {
        return createBy;
    }

    private String getRemark() {
        return remark;
    }

    private Date getCreateTime(){
        return createTime;
    }

    private  Date getUpdateTime(){
        return updateTime;
    }

    private String getUpdateBy(){
        return updateBy;
    }
}
